package com.crm.service.salPlan;

import com.crm.pojo.SalPlan;

import java.sql.Timestamp;
import java.util.List;

public interface SalPlanService {
    /**
     * 按照销售编号查询指定的开发计划信息
     * @param plaChcId 销售编号
     * @return 返回一个集合
     */
    public List<SalPlan> findSalPlansByChcId(Long plaChcId) throws Exception;

    /**
     * 删除指定的销售编号的开发计划信息
     * @param plaChcId 销售编号
     * @return 返回一个整数结果
     * @throws Exception
     */
    public int delSalPlanByPlaChcId(Long plaChcId) throws Exception;

    /**
     * 修改指定的开发计划信息
     * @param plaTodo 开发计划信息项目项
     * @param plaId 开发计划信息编号
     * @return 返回一个整数结果
     * @throws Exception
     */
    public int editSalPlanInPlaTodoByPlaId(String plaTodo, Long plaId) throws Exception;

    /**
     * 添加一个客户开发计划信息
     * @param salPlan 客户开发计划
     * @return 返回一个客户开发计划
     * @throws Exception
     */
    public SalPlan addSlaPlan(SalPlan salPlan) throws Exception;

    /**
     * 删除指定的开发计划信息
     * @param plaId 开发计划信息编号
     * @throws Exception
     */
    public void delSalPlanByPlaId(Long plaId) throws Exception;

    /**
     * 修改指定的开发计划信息中的执行效果
     * @param plaResult 执行效果
     * @param plaId 开发计划信息编号
     * @return 返回一个整数结果
     * @throws Exception
     */
    public int editSalPlanInPlaResultByPlaId(String plaResult, Long plaId) throws Exception;

    /**
     * 查看该销售机会是否有开发计划的结果为空
     * @param plaChcId 销售编号
     * @return 返回一个整数结果
     * @throws Exception
     */
    public int findSalPlanByPlaChcIdIsNull(Long plaChcId) throws Exception;
}